import { ECSScene } from "./ECSScene";

/**
 * [ECS]管理器
 */
export abstract class ECSMgr {
	constructor(private _scene: ECSScene) {}

	/** 所在场景 */
	get scene() {
		return this._scene;
	}

	/** 销毁 */
	destroy() {
		this.onDestroy?.();
		this._scene = null;
	}

	/**
	 * (虚方法)
	 * 场景销毁时触发
	 */
	protected onDestroy?(): void;
}
